// -*- IDL -*-
/*!
 * @file DataType.idl
 * @brief Basic Data Type definition
 * @date $Date: 2007/10/02 10:14:28 $
 * @author Noriaki Ando <n-ando@aist.go.jp>
 *
 * Copyright (C) 2003-2006
 *     Task-intelligence Research Group,
 *     Intelligent Systems Research Institute,
 *     National Institute of
 *         Advanced Industrial Science and Technology (AIST), Japan
 *     All rights reserved.
 *
 * $Id: BasicDataType.idl,v 1.1 2007/10/02 10:14:28 arafune Exp $
 *
 */

/*
 * $Log: BasicDataType.idl,v $
 * Revision 1.1  2007/10/02 10:14:28  arafune
 * *** empty log message ***
 *
 * Revision 1.3  2007/01/09 15:36:29  n-ando
 * BasicDataType.idl has been independent from other IDLs.
 * The namespace was changed from RTM to RTC.
 *
 * Revision 1.2  2006/11/08 15:57:03  n-ando
 * RTCDataType.idl was moved to BasicDataType.idl.
 *
 * Revision 1.1.1.1  2005/05/12 09:06:18  n-ando
 * Public release.
 *
 *
 */

#ifndef BasicDataType_idl
#define BasicDataType_idl

module RTC {
  //------------------------------------------------------------
  // Basic data type definition
  //------------------------------------------------------------
  struct Time
  {
        unsigned long sec;    // sec
        unsigned long nsec;   // nano sec
  };

  struct TimedState
  {
	Time tm;
	short data;
  };

  struct TimedString
  {
	Time tm;
	string data;
  };


  /*!
   * Sequence data type
   */
  struct TimedShortSeq
  {
	Time tm;
	sequence<short> data;
  };

  struct TimedStringSeq
  {
	Time tm;
	sequence<string> data;
  };
  
};

#endif // end of BasicDataType_idl
